#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//int main()
//{
//	int a = 0;
//	scanf("%d", &a);
//	int flag = 0;
//	if (a > 2000 && a <= 2100)
//	{
//		for (int j = 2001; j <= a; j++)
//		{
//			if ((j % 4 == 0 && j % 100 != 0) || j % 400 == 0)
//			{
//				flag = 1;
//				printf("%d\n", j);
//			}
//		}
//		if (flag == 0)
//		{
//			printf("None");
//		}
//	}
//	else
//	{
//		printf("Invalid year!");
//	}
//	return 0;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	double e = 1;
//	int m = 1;
//	double a = 0;
//	for (int j = 1; j <= n; j++)
//	{
//		m = m * j;
//		a = 1.0 / m + a;
//		e = a;
//	}
//	printf("%.8lf",e+1);
//	return 0;
//}
//#include<stdio.h>
//int main()
//{
//	long n = 0;
//	scanf("%ld", &n);
//	double e = 0;
//	long long m = 1;
//	long double a = 0;
//	for (int j = 1; j <= n; j++)
//	{
//		a = 1.0 / ( m * j ) + a;
//		e = a;
//	}
//	printf("%.8lf", e + 1);
//	return 0;
//}
int main()
{
	int n = 0;
	scanf("%d", &n);
	double e = 0;
	double m = 1;
	double a = 0;
	for (int j = 1; j <= n; j++)
	{
		//m = m * j;
		m = 1.0 / (m*j);
		a = m + a;
		e = a;
	}
	printf("%.8lf", e + 1);
	return 0;
}